﻿using System.Collections.Generic;
using CollegeSim.Domain.DTO;

namespace CollegeSim.Domain.Interfaces.Repositories
{
    // Author: Ryan Redburn
    // Project: CollegeSim
    // Date: 2/4/2014

    #region [ Updates ]

    // Author: Ryan Redburn
    // Date: 5/6/2014
    // Revisions: Changed interface to reflect version 2.0 changes.

    #endregion

    public interface ICourseRepository
    {
        IEnumerable<CourseDTO> FindAll();
        IEnumerable<CourseDTO> FindBySubject(string subject);
        IEnumerable<CourseDTO> FindByCreditHours(int hours);
        IEnumerable<CourseDTO> FindByStyle(bool online, bool hybrid);
        CourseDTO FindByID(int courseID);
        CourseDTO FindByTitle(string title);
        void Insert(CourseDTO newCourse);
        void Update(CourseDTO courseUpdate);
        void Delete(CourseDTO courseDel);
    }
}
